﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace OBNEPGGrabber
{
    // id, name,start,end,description,episodeTitle,genres,nicamParentalRating,nicamWarning,actors,aspectratio,directors,presenters
    class XMLTVProgram
    {
        private string m_strChannel = null;
        private string m_strName = null;
        private string m_strStart = null;
        private string m_strEnd = null;
        private string m_strDescription = null;
        private string m_strEpisodeTitle = null;
        private List<string> m_lstGenres = null;
        private string m_strnicamParentalRating = null;
        private string m_strnicamWarning = null;
        private List<string> m_lstActors = null;
        private string m_strAspectRatio = null;
        private List<string> m_lstDirectors = null;
        private List<string> m_lstPresenters = null;

        public string Channel
        {
            set { m_strChannel = value; }
            get { return m_strChannel; }
        }

        public string Name
        {
            set { m_strName = value; }
            get { return m_strName; }
        }

        public string Start
        {
            set { m_strStart = value; }
            get { return m_strStart; }
        }

        public string End
        {
            set { m_strEnd = value; }
            get { return m_strEnd; }
        }

        public string Description
        {
            set { m_strDescription = value; }
            get { return m_strDescription; }
        }

        public string EpisodeTitle
        {
            set { m_strEpisodeTitle = value; }
            get { return m_strEpisodeTitle; }
        }

        public void AddGenre(string strGenre)
        {
            if ( m_lstGenres == null )
                m_lstGenres = new List<string>();
            m_lstGenres.Add(strGenre);
        }

        public List<string> GetGenres()
        {
            return m_lstGenres;
        }

        public string NicamParentalRating
        {
            set { m_strnicamParentalRating = value; }
            get { return m_strnicamParentalRating; }
        }

        public string NicamWarning
        {
            set { m_strnicamWarning = value; }
            get { return m_strnicamWarning; }
        }

        public void AddActor(string strActor)
        {
            if ( m_lstActors == null )
                m_lstActors = new List<string>();
            m_lstActors.Add(strActor);
        }

        public List<string> GetActors()
        {
            return m_lstActors;
        }

        public string AspectRatio
        {
            set { m_strAspectRatio = value; }
            get { return m_strAspectRatio; }
        }

        public void AddDirector(string strDirector)
        {
            if (m_lstDirectors == null)
                m_lstDirectors = new List<string>();
            m_lstDirectors.Add(strDirector);
        }

        public List<string> GetDirectors()
        {
            return m_lstDirectors;
        }

        public void AddPresenter(string strPresenter)
        {
            if (m_lstPresenters == null)
                m_lstPresenters = new List<string>();
            m_lstPresenters.Add(strPresenter);
        }

        public List<string> GetPresenters()
        {
            return m_lstPresenters;
        }
    }
}
